# 1) 在 Python 文件中导入 CSV 库和 chardet 库
import csv
import chardet

# 2) 指定需要输出的 CSV 文件名。
filetouse = '班级名册--81268483.csv'

# 读取文件内容
with open(filetouse, 'rb') as f:
    data = f.read()
    # 使用 chardet 推测文件编码格式
    result = chardet.detect(data)
    encoding = result['encoding']
    print(encoding)

# 3) 使用 with open()方法打开该文件。其中，filetouse 为文件名，k表示该文件为只读,encoding 表示该文件的编码方式为 utf-8。
with open(filetouse, 'r', encoding=encoding) as f:
    # 4) 使用 csv. reader( )方法创建数据读取对象。
    r = csv.reader(f)
    # 5) 使用next()方法读取第一行的头部数据，并将焦点转到下一行。
    file_header = next(r)
    # 6) 输出结果。
    print(file_header)

# 7) 通过自定义变量id 和file_header_col, 以 for 循环的方式，使用enumerate( )方法将file_header 的值导出，并打印。其中，6mlmerate()方法将把头文件中的内容以索引号和字段名的形式划分。
for id, file_header_col in enumerate(file_header):
    print(id, file_header_col)

# 8） 输出结果。id 为索引号，file_header 为公司头文件字段。由此可知，“大学担任职务” 字段的索引号为 3。
# 0 班级
# 1 现就业公司名称
# 2 工作岗位
# 3 大学担任职务

# 9）使用自定义变量 row 获得 for 循环中 CSV 模块读取的文件对象 r, 并在循环中使用 if条件语句判断每行中 row［3］（第四个元素）的值为“团支书”，并打印出结果。
for row in r:
    if row[3] == '团支书':
        print(row)

# 10）显示结果如下：
# [软件 11201 J重庆虚拟人生科技有限公司「技术员，恸支书]
# 这样，就通过对 CSV 模块的操作提取了特定的内容。